1. Field of the Invention
The present invention relates to a memory system that includes a non-volatile semiconductor memory.
2. Description of the Related Art
A NAND flash memory is a semiconductor memory that requires erase operation before writing operation. A life of the semiconductor memory depends on a number of times of rewriting. Write/erase to and from a NAND flash memory is performed by applying a high voltage across a substrate and a control gate, thereby injecting/releasing electrons into/from a floating gate. Performing this operation a number of times degrades a gate oxide film around the floating gate and allows electrons injected into the floating gate to dissipate, which disadvantageously results in data loss. In other words, as a number of rewriting increases, a period of time (retention) over which data is held after rewrite becomes shorter (degradation of retention characteristic).
Meanwhile, data stored in a host apparatus, such as a personal computer, has both temporal locality and spatial locality. Accordingly, when data is stored to an address specified by a host apparatus without changing the address repeatedly, rewrite or erase operations are concentrated to a specific area in a short period of time, thereby increasing deviation in numbers of times of erasing over addresses. To this end, in a NAND flash memory, a technique of what is called wear leveling of evenly distributing data update locations is typically performed.